Enhanced H-VPLS service architecture using control word

ABSTRACT

The present disclosure is generally directed to systems and methods associated with data communications. In a particular embodiment, a method for use of multi-protocol labels switching (MPLS) encapsulation with control word communicated over a distributed computer network is disclosed. The method includes providing MPLS virtual circuit label with the control word associated with a data packet selected from one of a customer data packet and an OAM data packet, and communicating the MPLS packet with control word and the data packet over the distributed computer network.  
     In another embodiment, a method of handling a data packet within a computer network is disclosed. The data packet is either an unknown unicast, multicast, or broadcast packet. The method includes encapsulating the packet into a multi-packet label switching label and a control word, the control word having a source site identity and a multi-cast identity; and distributing the packet to a plurality of sites within the computer network.

BACKGROUND

[0001] 1. Field of the Invention

[0002] The present disclosure relates to Ethernet over multi-protocollabel switching (MPLS) service.

[0003] 2. Description of the Related Art

[0004] Many systems and architectures have been disclosed for handlingdata traffic over distributed networks. One type of system that has beenrecently proposed to the Internet Engineering Task Force (IETF) is anEthernet over multi-protocol label switching (MPLS) architecture.

[0005] While the proposed system has many benefits in providing costeffective data services, this system fails to adequately take intoconsideration scalability issues, such as medium access control (MAC)address computational concerns for networks with large numbers ofcustomer MAC addresses, and maintenance issues, such as providingedge-to-edge troubleshooting.

[0006] Accordingly, there is a need for improved systems and methods ofproviding Ethernet over MPLS.

SUMMARY

[0007] The present disclosure is generally directed to systems andmethods associated with data communications. In a particular embodiment,a method for use of multi-protocol labels switching (MPLS) encapsulationwith control word communicated over a distributed computer network isdisclosed. The method includes providing MPLS virtual circuit label withthe control word associated with a data packet selected from one of acustomer data packet and an OAM data packet, and communicating the MPLSpacket with control word and the data packet over the distributedcomputer network.

[0008] In another embodiment, a method of handling a data packet withina computer network is disclosed. The data packet is either an unknownunicast, multicast, or broadcast packet. The method includesencapsulating the packet into a multi-packet label switching label and acontrol word, the control word having a source site identity and adestination site identity. The destination site identity could be amulti-cast identity. The packet is distributed to a plurality of sitesassociated with the customer virtual private network within the computernetwork.

[0009] In another embodiment, a method of handling a data packet withina computer network where the destination address is known to the localnode is disclosed. The method includes encapsulating the packet into amulti-packet label switching label and a control word, the control wordhaving a source site identity and a multi-cast identity; anddistributing the packet to a plurality of sites within the computernetwork.

[0010] In another embodiment, a method of handling a data packet atingress node multi-tenant unit (MTU) is disclosed. The method includesreceiving a data packet from a data port responsive to customerequipment; performing customer medium access control address learning;determining whether the data packet is a unicast packet and if thepacket is unicast packet and destination address is known to the localnode, encapsulating the data packet into a multi-packet label switchinglabel and a control word. The control word has a provider source siteidentity and a provider destination site identity. If the destinationaddress of the packet is multi-cast, broadcast or unknown unicastaddress, the data packet is encapsulated into a multi-packet labelswitching label and a control word. The control word has a providersource site identity and a provider multicast site identity.

[0011] In another embodiment, a method of handling a data packetcommunication is disclosed. The method includes receiving the datapacket at an egress multi-tenant unit (MTU) port; performing a mappingbetween a source medium access control address of the data packet and aprovider source site identity; removing a multi-packet label and controlword from the data packet to produce an Ethernet data packet; andsending the Ethernet data packet to a destination site. In anotherembodiment, a method of handling a data packet communication isdisclosed. The method includes receiving the data packet at provideredge device (PE); performing provider site ID learning; determiningwhether the data packet is a unicast packet; if the packet is unicastpacket and destination Site-ID is known to the local node, forwardingthe packet to the destination PE device; and if the destination Site-IDof the packet is multi-cast, broadcast or unknown unicast address,distributing the packet to a plurality of sites associated with thecustomer virtual private network within the computer network.

[0012] In yet a further embodiment, a method of testing datacommunication within a network is disclosed. The method includesgenerating a testing packet for communication by a multi-tenant unit;and communicating the testing packet from the multi-tenant unit toanother element within the network. The testing packet includes acontrol word. The control word includes a site destinationidentification field and a site source identification field.

[0013] In another embodiment, a control word for use in connection witha distributed computer network having customer equipment at a first sitewhere the customer equipment has a plurality of associated medium accesscontrol addresses is disclosed. The control word includes a serviceprovider site identification field to represent a group of the pluralityof medium access control addresses at the first site.

[0014] In another embodiment, a distributed computer data network of aservice provider is disclosed. The distributed computer data networkincludes a first computing node (source multi-tenant unit); a secondcomputing node (provider edge device); a third computing node (provideredge device) a fourth computing node (destination multi-tenant unit);and a data packet communicated between the first computing node and thesecond computing node, the data packet including a control word having aprovider destination identification corresponding to the location of thefourth third computing node. The second computing node receives the datapacket and forwards the data packet to the third computing node inresponse to processing the provider destination identification todetermine the packet destination.

BRIEF DESCRIPTION OF THE DRAWINGS

[0015]FIG. 1 is a block diagram that illustrates a particular systemarchitecture that provides Ethernet over IP/MPLS.

[0016]FIG. 2 illustrates an example of a customer packet that can beused where the control word is defined.

[0017]FIG. 3 is a flow diagram illustrating a method of customer packethandling at an ingress MTU point using a control word mode.

[0018]FIG. 4 is a flow diagram illustrating a method for handlingpackets at an egress MTU point using a control word mode.

[0019] The use of the same reference symbols in different drawingsindicates similar or identical items.

DETAILED DESCRIPTION OF THE DRAWING(S)

[0020] Referring to FIG. 1, a system 100 is disclosed. The system 100includes customer equipment 112, multi-tenant unit (MTU) 102, provideredge equipment unit 106, a second provider edge equipment unit 108,internet protocol/multi-protocol label switching core (IP/MPLS) 128, adestination multi-tenant unit 110, and destination customer equipment116. The customer equipment 112 is located at a first site and isassociated with a plurality of medium access control (MAC) addresses114. The customer equipment 112 at the first site is linked to the MTU102 via link 120. Data communicated between the CE 112 and the MTU 102is received at a first port 122 of the MTU 102. The MTU 102 includes avirtual circuit (VC) encapsulation with control word module 140 and asite identification (ID) and customer MAC mapping learning module 142.The provider edge equipment 106 includes site identification learningmodule 150 and is coupled to another MTU 104 via virtual circuit 126.The first provider edge equipment unit 106 is in communication with thefirst MTU 102 via virtual circuit 124.

[0021] The second provider edge equipment unit 108 also includes a siteidentification learning module 152 and is coupled to MTU 110 via virtualcircuit 130. The MTU 110 includes a site identification and customer MACmapping learning module 146 and VC encapsulation with control wordmodule 144. The MTU 110 is coupled to customer equipment 116 via datalink 134. The customer equipment 116 is located at a second site and isassociated with a second plurality of MAC addresses 118.

[0022] During operation, data packets originating from the customerequipment 112 at the first site are communicated over data link 120 andthe first port 122 to the MTU 102. At the MTU 102, a site identificationfor the first site of the customer equipment 112 is associated with aplurality of MAC addresses for such customer equipment. In addition, theMTU 102 performs site ID and customer MAC mapping learning 142. The MTU102 communicates with the provider edge equipment 106 by sending apacket with VC encapsulation and control word 160. The control word 160includes a source site identification (ID) and a destinationidentification (ID) associated with the first site where the customerequipment 112 is located). Similarly, the destination ID is associatedwith the destination site, such as the second site where the customerequipment 116 is located.

[0023] The provider edge equipment 106, responsive to receipt of thedata packet and control word 160, receives the site ID information,performs site ID learning via module 150, and determines the destinationID for further routing of the packet. Data packets are forwarded by theprovider edge equipment 106 via the IP/MPLS core network 128 to far endprovider edge equipment, such as provider edge equipment 108. Theprovider edge equipment 108 further passes a packet with VCencapsulation and control word 162 containing the destination site IDvia virtual circuit 130 to the MTU 110. The encapsulated control wordpacket 162 and the associated data packet for the control word isprocessed at the MTU 110. The site ID, destination ID, and MAC learningprocesses is are performed, MPLS VC label and control word is stripedoff and the packet is routed and forwarded to the customer equipment 116at the second site. Finally, the customer equipment 116 forwards thecommunicated data to the appropriate equipment based on the particulardestination MAC address.

[0024]FIG. 2 illustrates an example of a customer packet header that canbe used where the control word is defined. Field 1102 is for the MPLS VClabel and is four octets. Fields 1104 and 1113 are reserved and are eacheight bits. Field 1106 is twelve bits for the destination or Multicastsite IDs. Field 1108 is for the source ID and is also twelve bits. Theillustrated data packet also includes customer destination or broadcastMAC 1110, customer MAC source address 1112, original Ethertype 1114,customer payload 1116, PAD 1118, and original FCS 1120.

[0025] Referring to FIG. 3, a method of customer packet handling at aningress point MTU using a control word is illustrated. A packet isreceived from a customer facing port at 1404 and customer MAC learningof the packet is performed, at 1406. If the packet is determined to be aunicast packet at decision step 1408, then a mapping of the packetdestination MAC address is located with the provider destination siteID, at 1410. If the packet is located as determined by decision step1412, then the packet is encapsulated into an MPLS frame, the VC labeland control word is defined with the provider source ID and destinationsite ID, at 1414, and the packet is forwarded to the destination site,at 1416. Referring to decision step 1408, where a packet is determinedto be a multicast packet, or in the case where decision step at 1412 isnegative due to the packet mapping not being located, then processingcontinues at 1418, where the packet is encapsulated into an MPLS frame,the VC label and control word are populated with the provider sourcesite ID and multicast destination site ID, and the multicast packet isbroadcast to the entire set of VPLS sites, at 1420. In either scenario,processing is then completed at step 1430.

[0026] Referring to FIG. 4, a method for handling packets at an egresspoint MTU using a control word mode is illustrated. A packet is receivedat an egress port MTU, at 1504. The destination site is checked at 1506.If the destination site is not equal to the multicast site ID or theport site ID, at decision step 1506, then error handling is performed at1512 and processing is completed at 1520. If the destination site isequal to the multicast site ID or port site ID, as determined atdecision step 1506, then the destination MAC is compared to the providerport MAC or the multicast MAC, at decision step 1508. Where thedestination MAC equals either the provider port MAC or the multicastMAC, then OAM processing is performed at 1510 and the method iscompleted at 1520. Where the destination MAC is not equal to theprovider MAC or multicast MAC, then the method performs learning andmapping between the customer source MAC and the provider site ID, at1514, thereafter, the MPLS VC-label and control word is stripped off,and the Ethernet packet is forwarded to the customer at 1516. Processingis then completed at 1520.

[0027] The present disclosure presents a MPLS encapsulation mechanismwith Control Word for providing Hierarchical-Virtual Private Local AreaNetwork Service (H-VPLS) using Ethernet over MPLS. VPLS is a class oflayer-2 virtual private network (VPN) services that allow multiplecustomer sites to be connected over a provider managed IP/MPLSinfrastructure, so that customer devices appear to be on the same LocalArea Network (LAN). The multi-tenant unit (MTU) device performs MPLS VCencapsulation and customer MAC and provider Site-ID mapping learning.

[0028] The MPLS encapsulation technique with Control Word may be used toavoid customer MAC handling on provider edge (PE) devices. A newprovider Site-ID is provided to represent one or many customer MACaddresses behind a customer facing port (e.g., behind a MTU). PE devicesperform a limited amount of network address learning. The MPLSencapsulation with Control Word also provides for OAM delivery (e.g., tofacilitate point-to-point, point-to-multi-point reachability testing,performance measurement, or the like). Customer MAC learning at gatewaydevices may be beneficially reduced or eliminated when a VPLS servicespans multiple domains.

[0029] The above disclosed subject matter is to be consideredillustrative and the appended claims are intended to cover all suchmodifications and other embodiments which fall within the true spiritand scope of the present invention. Thus, to the maximum extent allowedby law, the scope of the present invention is to be determined by thebroadest permissible interpretation of the following claims and theirequivalents, and shall not be restricted or limited by the foregoingdetailed description.

What is claimed is:
 1. A method for use of multi-protocol labelsswitching (MPLS) encapsulation with control word communicated over adistributed computer network, the method comprising: providing MPLSvirtual circuit label with the control word associated with a datapacket selected from one of a customer data packet and an OAM datapacket; and communicating the MPLS packet with control word and the datapacket over the distributed computer network.
 2. The method of claim 1,further comprising communicating the control word over the distributedcomputer network, without performing customer medium access controlhandling at a provider edge device.
 3. The method of claim 1, whereinthe control word includes a provider source address and a providerdestination address.
 4. The method of claim 1, wherein the control wordincludes a first twelve bit field for the provider source address and asecond twelve bit field for the provider destination address.
 5. Themethod of claim 1, wherein the provider destination address is set to aunique multicast value, the unique multicast value indicatingcommunicating the data packet to a plurality of network nodes within aparticular virtual private network domain.
 6. The method of claim 1,wherein the provider address is for a provider site identity that isdefined on one of a customer port, multi-tenant unit, and labelswitching service basis.
 7. A method of handling a data packet atingress MTU within a computer network, the data packet selected from anunknown unicast, multicast, and broadcast packet, the method comprising:performing MAC learning in response to a received data packet, if thedata packet is either an unknown unicast, multicast, or broadcastpacket, encapsulating the packet into a multi-packet label switchinglabel and a control word, the control word having a source site identityand a multi-cast identity; and distributing the packet to a plurality ofsites within the computer network;
 8. A method of handling a data packetat ingress MTU within a computer network, the method comprising:performing MAC learning in response to the receiving data packet, if thepacket is unicast and the destination address is known to the localnode; encapsulating the packet into a multi-packet label switching labeland a control word, the control word having a source site identity and amulti-cast destination site identity; and forwarding the packet to aplurality of sites of a specific site (MTU) within the computer network.9. The method of claim 8, further comprising locating a mapping of adestination medium access control address associated with the providerdestination site identity.
 10. A method of handling a data packetcommunication, the method comprising: receiving the data packet at anegress MTU port; performing a mapping between a source medium accesscontrol address of the data packet and a provider source site identity;removing a multi-packet label and control word from the data packet toproduce an Ethernet data packet; and sending the Ethernet data packet toa destination site.
 11. The method of claim 10, further comprisingperforming error checking on the data packet.
 12. A method of testingdata communication within a network, the method comprising: generating atesting packet for communication by a multi-tenant unit; andcommunicating the testing packet from the multi-tenant unit to anotherelement within the network, the testing packet including a control word,the control word including a site destination identification field and asite source identification field.
 13. The method of claim 12, furthercomprising receiving the testing packet at provider edge equipment. 14.A control word for use in connection with a distributed computer networkhaving customer equipment at a first site, the customer equipment havinga plurality of associated medium access control addresses, the controlword comprising: a service provider site identification field, theservice provider site identification field to represent a group of theplurality of medium access control addresses at the first site.
 15. Adistributed computer data network of a service provider, the distributedcomputer data network comprising: a first computing node (source MTU); asecond computing node (PE); a third computing node (PE); a fourthcomputing node (destination PE); and a data packet communicated betweenthe first computing node and the second computing node, the data packetincluding a control word having a provider destination identificationcorresponding to the location of the fourth computing node; wherein thesecond computing node receives the data packet and forwards the datapacket to the third computing node in response to processing theprovider destination identification to determine the packet destination.16. The distributed computer network of claim 15, wherein a second firstof the computer nodes is a first provider equipment node that includes afirst site identification learning module and a third second of thecomputer nodes is a second provider equipment node that includes asecond site identification learning module.
 17. The distributed computernetwork of claim 15, wherein the first provider equipment node iscoupled to the second provider equipment node via an intermediate labelswitching data network.
 18. The distributed computer network of claim15, wherein the first computer node is a multi-tenant unit that includesan input interface to customer equipment, the multi-tenant unitincluding a virtual circuit packet encapsulation module with controlword encapsulation module.
 19. The distributed computer network of claim18, wherein the multi-tenant unit further includes a site identificationand customer medium access control mapping and learning module.